<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // Array.from()将一个类似与数组结构的数据转换为标准数组
        // 类数组：元素以连续的数值进行定义，包含一个描述数量的length属性
        var str="abcdef";
        var arr1=Array.from(str);
        console.log(arr1);

        function f1(){
            return Array.from(arguments);
        }
        console.log(f1(100,200,300,400));

        var obj={
            0:"alice",
            1:"baby",
            2:"coco",
            3:"lili",
            length:4
        };
        console.log(Array.from(obj));

        // Array.of(参数1,参数2.......)基于指定的数据，构建成一个新的数组
        var arr2=new Array(4);//传入一个数值的时候，表示创建以该数值为长度的新数组，元素值是没有的
        var arr3=Array.of(6);//传入一个数值的时候，表示创建以该数值为元素的新数组
        var arr4=Array.of(1,"a",true,[1,2,3]);
        console.log(arr4);

        //find(回调函数)、findIndex(回调函数)
        // callback(value,index,array)
        // 从数组中循环找出符合条件结果的第一个元素或下标
        var arrays=[100,20,30,400,600];
        var result=arrays.find(function(value,index,array){
           
            return value>=200;
        });
        console.log(result);


        // 从数组中循环找出符合条件结果的第一个元素或下标
        var arrays=["肖战","杨紫","王一博","朱一龙","王一博","肖战","肖战"];
        var result=arrays.findIndex(function(value,index,array){
            console.log(value);
            return value=="王一";//如果找不到，返回-1
        });
        console.log(result);

        // fill(v,s,e)数组元素的填充，以给定的参数为指定数据进行元素填充
        // v:填充数据
        // s:填充开始的索引
        // e:填充结束的索引(不包含该索引)
        var arr5=new Array(10);
        arr5.fill("天空",2,6);//填充数组，数组中索引为[2,6)的元素值为天空
        console.log(arr5);

        // includes()查找数组中是否存在该元素
        var arr6=["alice",100,30,"嘻嘻嘻",true];
        console.log(arr6.includes("嘻嘻嘻"));
        console.log(arr6.includes(true));
        console.log(arr6.includes(1000));
        
    </script>
</head>
<body>
    
</body>
</html>